package com.test.study.ToolsUtils.strom.trident;

import org.apache.storm.Config;
import org.apache.storm.LocalCluster;
import org.apache.storm.trident.TridentTopology;
import org.apache.storm.trident.testing.FixedBatchSpout;
import org.apache.storm.tuple.Fields;
import org.apache.storm.tuple.Values;

public class TridentTopologyFun {

	@SuppressWarnings("unchecked")
	public static void main(String[] args) {

		TridentTopology tridentTopology = new TridentTopology();
		// 固定大小的
		FixedBatchSpout fixedBatchSpout = new FixedBatchSpout(new Fields("sentence"), 1,
				new Values(1));// 参数1 输出的字段 参数2 输出的个数 参数3 输出的参数
		tridentTopology.newStream("spout1", fixedBatchSpout)// 参数1 spoutID
				.each(new Fields("sentence"), new MyTridentFunction(), new Fields(""));// 参数1 ：inputFields 输入字段
																					// 参数2:处理数据的function 参数3:输出字段没有里面写为空
		//具体意思就是  new MyBaseFunction() 这个类中的函数处理的输入参数和输出参数
		fixedBatchSpout.setCycle(true);//设置为true 表示一直打印这个数据  循环发送
		
		
		LocalCluster localCluster = new LocalCluster();
		localCluster.submitTopology("TridentTopologyFun", new Config(), tridentTopology.build());
	}

}
